package cc.rengu.igas.bomp.common.dao;

import cc.rengu.igas.bomp.common.entity.FeeInfo;
import cc.rengu.oltp.utility.bean.PageInfo;
import cc.rengu.oltp.utility.bean.PageResult;

import java.util.List;

/**
 * @ClassName FeeInfoMapper
 * @Description 费率模板表接口类
 * @Author 赵奎伍
 * @date 2020/3/30
 */
public interface FeeInfoMapper {
    /**
     * 根据多法人标识查询费率模板表信息
     *
     * @param instId 多法人标识
     * @return 费率模板信息
     * @throws Exception 异常
     */
    List<FeeInfo> selectFeeInfoByInstId(String instId) throws Exception;

    /**
     * 根据多法人标识查询费率模板表信息
     *
     * @param instId   多法人标识
     * @param pageInfo 页面
     * @return 费率模板信息
     * @throws Exception 异常
     */
    PageResult selectFeeInfoPageFeeInfoByInstId(String instId, PageInfo pageInfo) throws Exception;

    /**
     * 根据费率代码、费率名称、费率描述查询费率信息
     *
     * @param instId  多法人标识
     * @param feeCd   费率代码
     * @param feeName 费率名称
     * @return 费率模板信息
     * @throws Exception 异常
     */
    List<FeeInfo> selectFeeInfoByKeys(String instId, String feeCd, String feeName) throws Exception;


    /**
     * 根据费率代码、费率名称、费率描述查询费率信息
     *
     * @param instId  多法人标识
     * @param feeCd   费率代码
     * @param feeName 费率名称
     * @return 费率模板信息
     * @throws Exception 异常
     */
    PageResult selectFeeInfoPageInfoByKeys(String instId, String feeCd, String feeName, PageInfo pageInfo) throws Exception;
}


